package main

import "fmt"

func add(a, b int) int {
	return a + b
}
func sub(a, b int) int {
	return a - b
}
func mul(a, b int) int {
	return a * b
}
func div(a, b int) int {
	return a / b
}

type calcType func(int, int) int

func calcFunc(a, b int, calcTy calcType) int {
	return calcTy(a, b)
}
func main() {
	// 我们只需要根据传入的函数类型，即可确定计算的类型
	result := calcFunc(1, 3, add)
	fmt.Println("result =", result) //result = 4
}
